This document relates to a scalable programming architecture for telecommunications devices. Current telecommunications network management solutions offer either high performance programming languages (e.g., functional programming languages) that emphasize reliability and concurrency, but lack flexibility, or scripting languages that emphasize clear syntax, readability and are easily modified for new customer applications where performance and parallel execution are a nonissue. When high performance network management solutions are required, software development is time-consuming because it is not data-driven.
In high performance network management solutions, software development requires transformations that need to be coded using a high performance programming language for each different application (e.g., combinations of features for various network operators) used in managing the network. The software may need to be updated frequently to add new applications or maintain existing applications. Over the life cycle of devices in the network, the software becomes increasingly difficult to change, and increasingly susceptible to faults.